home *** CD-ROM | disk | FTP | other *** search
/ Mac Easy 2010 May / Mac Life Ubuntu.iso / casper / filesystem.squashfs / usr / src / linux-headers-2.6.28-15 / arch / arm / mach-s3c2410 / include / mach / fb.h < prev    next >
Encoding:
C/C++ Source or Header  |  2008-12-24  |  1.8 KB  |  75 lines

  1. /* arch/arm/mach-s3c2410/include/mach/fb.h
  2.  *
  3.  * Copyright (c) 2004 Arnaud Patard <arnaud.patard@rtp-net.org>
  4.  *
  5.  * Inspired by pxafb.h
  6.  *
  7.  * This program is free software; you can redistribute it and/or modify
  8.  * it under the terms of the GNU General Public License version 2 as
  9.  * published by the Free Software Foundation.
  10. */
  11.  
  12. #ifndef __ASM_ARM_FB_H
  13. #define __ASM_ARM_FB_H
  14.  
  15. #include <mach/regs-lcd.h>
  16.  
  17. struct s3c2410fb_hw {
  18.     unsigned long    lcdcon1;
  19.     unsigned long    lcdcon2;
  20.     unsigned long    lcdcon3;
  21.     unsigned long    lcdcon4;
  22.     unsigned long    lcdcon5;
  23. };
  24.  
  25. /* LCD description */
  26. struct s3c2410fb_display {
  27.     /* LCD type */
  28.     unsigned type;
  29.  
  30.     /* Screen size */
  31.     unsigned short width;
  32.     unsigned short height;
  33.  
  34.     /* Screen info */
  35.     unsigned short xres;
  36.     unsigned short yres;
  37.     unsigned short bpp;
  38.  
  39.     unsigned pixclock;        /* pixclock in picoseconds */
  40.     unsigned short left_margin;  /* value in pixels (TFT) or HCLKs (STN) */
  41.     unsigned short right_margin; /* value in pixels (TFT) or HCLKs (STN) */
  42.     unsigned short hsync_len;    /* value in pixels (TFT) or HCLKs (STN) */
  43.     unsigned short upper_margin;    /* value in lines (TFT) or 0 (STN) */
  44.     unsigned short lower_margin;    /* value in lines (TFT) or 0 (STN) */
  45.     unsigned short vsync_len;    /* value in lines (TFT) or 0 (STN) */
  46.  
  47.     /* lcd configuration registers */
  48.     unsigned long    lcdcon5;
  49. };
  50.  
  51. struct s3c2410fb_mach_info {
  52.  
  53.     struct s3c2410fb_display *displays;    /* attached diplays info */
  54.     unsigned num_displays;            /* number of defined displays */
  55.     unsigned default_display;
  56.  
  57.     /* GPIOs */
  58.  
  59.     unsigned long    gpcup;
  60.     unsigned long    gpcup_mask;
  61.     unsigned long    gpccon;
  62.     unsigned long    gpccon_mask;
  63.     unsigned long    gpdup;
  64.     unsigned long    gpdup_mask;
  65.     unsigned long    gpdcon;
  66.     unsigned long    gpdcon_mask;
  67.  
  68.     /* lpc3600 control register */
  69.     unsigned long    lpcsel;
  70. };
  71.  
  72. extern void __init s3c24xx_fb_set_platdata(struct s3c2410fb_mach_info *);
  73.  
  74. #endif /* __ASM_ARM_FB_H */
  75.